﻿<?xml version="1.0" encoding="utf-8"?>

<platform xmlns="http://metalx.org/Platform" namespace="http://metalx.org/Motorola/6800">
	<processor>
		<operation name="NoOperation" value="01"/>
		<operation name="CopyAccumulatorAToFlags" value="06"/>
		<operation name="CopyFlagsToAccumulatorA" value="07"/>
		<operation name="IncrementIndex" value="08"/>
		<operation name="DecrementIndex" value="09"/>
		<operation name="ClearOverflowFlag" value="0A"/>
		<operation name="SetOverflowFlag" value="0B"/>
		<operation name="ClearCarryFlag" value="0C"/>
		<operation name="SetCarryFlag" value="0D"/>
		<operation name="ClearInterruptFlag" value="0E"/>
		<operation name="SetInterruptFlag" value="0F"/>
		<operation name="SubtractAccumulatorBFromAccumulatorA" value="10"/>
		<operation name="CompareAccumulatorBToAccumulatorA" value="11"/>
		<operation name="CopyAccumulatorAToAccumulatorB" value="16"/>
		<operation name="CopyAccumulatorBToAccumulatorA" value="17"/>
		<operation name="DecimalAdjustAccumulatorA" value="19"/>
		<operation name="AddAccumulatorBToAccumulatorA" value="1B"/>
		<operation name="JumpToRelative" value="20"/>
		<operation name="BranchIfLessThanOrEqual" value="23"/>
		<operation name="BranchIfNotCarry" value="24"/>
		<operation name="BranchIfCarry" value="25"/>
		<operation name="BranchIfNotEqual" value="26"/>
		<operation name="BranchIfEqual" value="27"/>
		<operation name="BranchIfNotOverflow" value="28"/>
		<operation name="BranchIfOverflow" value="29"/>
		<operation name="BranchIfPositive" value="2A"/>
		<operation name="BranchIfNegative" value="2B"/>
		<operation name="BranchIfGreaterThanOrEqualToZero" value="2C"/>
		<operation name="BranchIfLessThanZero" value="2D"/>
		<operation name="BranchIfGreaterThanZero" value="2E"/>
		<operation name="BranchIfLessThanOrEqualToZero" value="2F"/>
		<operation name="CopyStackPointerToIndex" value="30"/>
		<operation name="IncrementStackPointer" value="31"/>
		<operation name="PullAccumulatorAFromStack" value="32"/>
		<operation name="PullAccumulatorBFromStack" value="33"/>
		<operation name="DecrementStackPointer" value="34"/>
		<operation name="CopyIndexToStackPointer" value="35"/>
		<operation name="PushAccumulatorAToStack" value="36"/>
		<operation name="PushAccumulatorBToStack" value="37"/>
		<operation name="ReturnFromSubroutine" value="39"/>
		<operation name="ReturnFromInterrupt" value="3B"/>
		<operation name="WaitForInterrupt" value="3E"/>
		<operation name="SoftwareInterrupt" value="3F"/>
		<operation name="NegateAccumulatorA" value="40"/>
		<operation name="ComplementAccumulatorA" value="43"/>
		<operation name="ShiftAccumulatorARight" value="44"/>
		<operation name="RotateAccumulatorARight" value="46"/>
		<operation name="HalfAccumulatorA" value="47"/>
		<operation name="DoubleAccumulatorA" value="48"/>
		<operation name="RotateAccumulatorALeft" value="49"/>
		<operation name="DecrementAccumulatorA" value="4A"/>
		<operation name="IncrementAccumulatorA" value="4C"/>
		<operation name="TestAccumulatorA" value="4D"/>
		<operation name="ClearAccumulatorA" value="4F"/>
		<operation name="NegateAccumulatorB" value="50"/>
		<operation name="ComplementAccumulatorB" value="53"/>
		<operation name="ShiftAccumulatorBRight" value="54"/>
		<operation name="RotateAccumulatorBRight" value="56"/>
		<operation name="HalfAccumulatorB" value="57"/>
		<operation name="DoubleAccumulatorB" value="58"/>
		<operation name="RotateAccumulatorBLeft" value="59"/>
		<operation name="DecrementAccumulatorB" value="5A"/>
		<operation name="IncrementAccumulatorB" value="5C"/>
		<operation name="TestAccumulatorB" value="5D"/>
		<operation name="ClearAccumulatorB" value="5F"/>
		<operation name="NegateIndexMemory" value="60"/>
		<operation name="ComplementIndexMemory" value="63"/>
		<operation name="ShiftIndexMemoryRight" value="64"/>
		<operation name="RotateIndexMemoryRight" value="66"/>
		<operation name="HalfIndexMemory" value="67"/>
		<operation name="DoubleIndexMemory" value="68"/>
		<operation name="RotateIndexMemoryLeft" value="69"/>
		<operation name="DecrementIndexMemory" value="6A"/>
		<operation name="IncrementIndexMemory" value="6C"/>
		<operation name="TestIndexMemory" value="6D"/>
		<operation name="JumpToIndexMemory" value="6E"/>
		<operation name="ClearIndexMemory" value="6F"/>
		<operation name="NegateExtendedMemory" value="70"/>
		<operation name="ComplementExtendedMemory" value="73"/>
		<operation name="ShiftExtendedMemoryRight" value="74"/>
		<operation name="CopyStackPointerToZeroPageMemory" value="9F"/>
		<operation name="SubtractIndexMemoryFromAccumulatorA" value="A0"/>
		<operation name="CompareIndexMemoryToAccumulatorA" value="A1"/>
		<operation name="SubtractIndexMemoryFromAccumulatorAWithCarry" value="A2"/>
		<operation name="AndAccumulatorAWithIndexMemory" value="A4"/>
		<operation name="TestAccumulatorAWithIndexMemory" value="A5"/>
		<operation name="CopyIndexMemoryToAccumulatorA" value="A6"/>
		<operation name="CopyAccumulatorAToIndex" value="A7"/>
		<operation name="ExclusiveOrAccumulatorAWithIndexMemory" value="A8"/>
		<operation name="AddIndexMemoryToAccumulatorAWithCarry" value="A9"/>
		<operation name="OrAccumulatorAWithIndexMemory" value="AA"/>
		<operation name="AddIndexMemoryToAccumulatorA" value="AB"/>
		<operation name="CompareIndexRegisterWithIndexMemory" value="AC"/>
		<operation name="JumpToSubroutineAtIndexMemory" value="AD"/>
		<operation name="CopyIndexMemoryToStackPointer" value="AE"/>
		<operation name="CopyStackPointerToIndexMemory" value="AF"/>
		<operation name="SubtractExtendedMemoryFromAccumulatorA" value="B0"/>
		<operation name="CompareExtendedMemoryToAccumulatorA" value="B1"/>
		<operation name="SubtractExtendedMemoryFromAccumulatorAWithCarry" value="B2"/>
		<operation name="AndAccumulatorAWithExtendedMemory" value="B4"/>
		<operation name="TestAccumulatorAWithExtendedMemory" value="B5"/>
		<operation name="CopyExtendedMemoryToAccumulatorA" value="B6"/>
		<operation name="CopyAccumulatorAToExtendedMemory" value="B7"/>
		<operation name="ExclusiveOrAccumulatorAWithExtendedMemory" value="B8"/>
		<operation name="AddExtendedMemoryToAccumulatorAWithCarry" value="B9"/>
		<operation name="OrAccumulatorAWithExtendedMemory" value="BA"/>
		<operation name="AddExtendedMemoryToAccumulatorA" value="BB"/>
		<operation name="CompareExtendedMemoryToIndex" value="BC"/>
		<operation name="CallRoutineAtExtendedMemory" value="BD"/>
		<operation name="CopyExtendedMemoryToStackPointer" value="BE"/>
		<operation name="CopyStackPointerToExtendedMemory" value="BF"/>
		<operation name="SubtractImmediate8FromAccumulatorB" value="C0"/>
		<operation name="CompareImmedate8ToAccumulatorB" value="C1"/>
		<operation name="SubtractImmediate8FromAccumulatorBWithCarry" value="C2"/>
		<operation name="AndAccumulatorBWithImmediate8" value="C4"/>
		<operation name="TestAccumulatorBWithImmediate8" value="C5"/>
		<operation name="CopyImmediate8ToAccumulatorB" value="C6"/>
		<operation name="ExclusiveOrAccumulatorBWithImmediate8" value="C8"/>
		<operation name="AddImmediate8ToAccumulatorBWithCarry" value="C9"/>
		<operation name="OrAccumulatorBWithImmediate8" value="CA"/>
		<operation name="AddImmediate8ToAccumulatorB" value="CB"/>
		<operation name="CopyImmediate8ToIndex" value="CE"/>
		<operation name="SubtractZeroPageMemoryFromAccumulatorB" value="D0"/>
		<operation name="CompareZeroPageMemoryToAccumulatorB" value="D1"/>
		<operation name="SubtractZeroPageMemroyFromAccumulatorBWithCarry" value="D2"/>
		<operation name="AndAccumulatorBWithZeroPageMemory" value="D4"/>
		<operation name="TestAccumulatorBWithZeroPageMemory" value="D5"/>
		<operation name="CopyZeroPageMemoryToAccumulatorB" value="D6"/>
		<operation name="CopyAccumulatorBToZeroPageMemory" value="D7"/>
		<operation name="ExclusiveOrAccumulatorBWithZeroPageMemory" value="D8"/>
		<operation name="AddZeroPageMemoryToAccumulatorBWithCarry" value="D9"/>
		<operation name="OrAccumulatorBWithZeroPageMemory" value="DA"/>
		<operation name="AddZeroPageMemoryToAccumulatorB" value="DB"/>
		<operation name="CopyZeroPageMemoryToIndex" value="DE"/>
		<operation name="CopyIndexToZeroPageMemory" value="DF"/>
		<operation name="SubtractIndexMemoryFromAccumulatorB" value="E0"/>
		<operation name="CompareIndexMemoryToAccumulatorB" value="E1"/>
		<operation name="SubtractIndexMemoryFromAccumulatorBWithCarry" value="E2"/>
		<operation name="AndAccumulatorBWithIndexMemory" value="E4"/>
		<operation name="TestAccumulatorBWithIndexMemory" value="E5"/>
		<operation name="CopyIndexMemoryToAccumulatorB" value="E6"/>
		<operation name="CopyAccumulatorBToIndex" value="E7"/>
		<operation name="ExclusiveOrAccumulatorBWithIndexMemory" value="E8"/>
		<operation name="AddIndexMemoryToAccumulatorBWithCarry" value="E9"/>
		<operation name="OrAccumulatorBWithIndexMemory" value="EA"/>
		<operation name="AddIndexMemoryToAccumulatorB" value="EB"/>
		<operation name="CopyIndexMemoryToIndex" value="EE"/>
		<operation name="CopyIndexToIndexMemory" value="EF"/>
		<operation name="SubtractExtendedMemoryFromAccumulatorB" value="F0"/>
		<operation name="CompareExtendedMemoryToAccumulatorB" value="F1"/>
		<operation name="SubtractExtendedMemoryFromAccumulatorBWithCarry" value="F2"/>
		<operation name="AndAccumulatorBWithExtendedMemory" value="F4"/>
		<operation name="TestAccumulatorBWithExtendedMemory" value="F5"/>
		<operation name="CopyExtendedMemoryToAccumulatorB" value="F6"/>
		<operation name="CopyAccumulatorBToExtendedMemory" value="F7"/>
		<operation name="ExclusiveOrAccumulatorBWithExtendedMemory" value="F8"/>
		<operation name="AddExtendedMemoryToAccumulatorBWithCarry" value="F9"/>
		<operation name="OrAccumulatorBWithExtendedMemory" value="FA"/>
		<operation name="AddExtendedMemoryToAccumulatorB" value="FB"/>
		<operation name="CopyExtendedMemoryToIndex" value="FE"/>
		<operation name="CopyIndexToExtendedMemory" value="FF"/>
	</processor>
</platform>